home *** CD-ROM | disk | FTP | other *** search
/ Inter.Net 55-1 / Inter.Net 55-1.iso / CBuilder / Info / TeachU14 / SAMS / Code / Day04 / airplane.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-02-08  |  1.2 KB  |  53 lines

  1. //---------------------------------------------------------------------------
  2. #ifndef airplaneH
  3. #define airplaneH
  4. //---------------------------------------------------------------------------
  5. #define AIRLINER      0
  6. #define  COMMUTER     1
  7. #define  PRIVATE      2
  8. #define  TAKINGOFF    0
  9. #define  CRUISING     1
  10. #define LANDING       2
  11. #define ONRAMP        3
  12. #define  MSG_CHANGE   0
  13. #define  MSG_TAKEOFF  1
  14. #define  MSG_LAND     2
  15. #define  MSG_REPORT   3
  16. class Airplane {
  17.   public:
  18.     Airplane(const char* _name, int _type = AIRLINER);
  19.     ~Airplane();
  20.     virtual int GetStatus(char* statusString);
  21.     int GetStatus()
  22.     {
  23.     return status;
  24.     }
  25.      int Speed()
  26.     {
  27.       return speed;
  28.     }
  29.     int Heading()
  30.     {
  31.       return heading;
  32.     }
  33.     int Altitude()
  34.     {
  35.       return altitude;
  36.     }
  37.     void ReportStatus();
  38.     bool SendMessage(int msg, char* response,
  39.       int spd = -1, int dir = -1, int alt = -1);
  40.     char* name;
  41.   protected:
  42.     virtual void TakeOff(int dir);
  43.     virtual void Land();
  44.   private:
  45.     int speed;
  46.     int altitude;
  47.     int heading;
  48.     int status;
  49.     int type;
  50.     int ceiling;
  51. };
  52. #endif
  53.